#pragma once

#include "exports.hpp"
#include "stream.hpp"




namespace logger
{
	class LOGGER_API vsstream
		: public stream
	{
	public:

		/**
		 * Create a stream.
		 */
		vsstream(boost::shared_ptr<const services::provider> p);




		/**
		 * Log an entry to a certain device (called stream)
		 * The behaviour is to be implemented by subclasses to log
		 * to a specific device.
		 */
		virtual stream &operator<<(const entry&);
	};
	///////////////////////////////////////////////////////////////////////////////////////////////
}
///////////////////////////////////////////////////////////////////////////////////////////////////
